When characters including three-dimensional objects are drawn in a virtual three-dimensional space in a personal computer, a video game machine or the like, the three-dimensional objects are generally drawn by three-dimensional polygon data. The three-dimensional polygon data are respectively generated by carrying out polygon calculations in accordance with a distance between each of the three-dimensional objects in the field of view of a virtual camera and the viewpoint position of the virtual camera or the like.
For this reason, as the number of three-dimensional objects drawn in the virtual three-dimensional space becomes larger, the amount of polygon calculations increases. Thus, there is a fear that throughput exceeds computing power of hardware such as a personal computer and a video game machine in the case where a large number of three-dimensional objects are drawn in the virtual three-dimensional space. In the case where such throughput exceeds computing power, negative effects such as reduced display speed and screen flicker may occur.
In order to solve such a problem, in some conventional personal computers or video game machines, drawing of three-dimensional objects which are further apart from the viewpoint position of the virtual camera by a predetermined distance or more is omitted, whereby the number of three-dimensional objects to be drawn is reduced. However, although objects are far from the viewpoint position of the virtual camera, they can still be seen in a real space. Since such objects are omitted in the screen displayed as the virtual three-dimensional space, the screen becomes less realistic (realistic sensation is reduced).
In this regard, in order to reduce the processing load of hardware without omitting objects to be displayed on the virtual three-dimensional space, there is a known process in which all objects are not drawn by three-dimensional polygon data when a lot of objects are to be displayed on the virtual three-dimensional space. Some of the objects which are further from the viewpoint position of the virtual camera by a predetermined distance or more are drawn by two-dimensional sprite data (for example, see Japanese Patent Application Publication No. 2003-141560).
However, in the technique of the patent document mentioned above, it is determined whether or not objects to be displayed exist within a predetermined distance or more from the viewpoint position of the virtual camera. In the case where the objects exist within the predetermined distance, they are drawn by three-dimensional polygon data. On the other hand, in the case where the objects exist outside the predetermined distance, they are drawn by two-dimensional sprite data. For this reason, in the case where an object has to move forward or backward across the predetermined distance from the viewpoint position of the virtual camera, it becomes necessary to change such an object between a two-dimensional object and a three-dimensional object. Therefore, a process to change between two-dimensional sprite data and three-dimensional polygon data is required. Further, in the case where an object drawn by two-dimensional sprite data (that is, a two-dimensional object) is changed into an object drawn by three-dimensional polygon data (that is, a three-dimensional object), three-dimensional objects to be drawn in the virtual three-dimensional space are increased. For this reason, there is a fear that throughput exceeds computing power of hardware such as a personal computer and a video game machine because control load (processing load) of the hardware maybe increased.